package com.canaan.business.domain.quality;

import java.math.BigDecimal;
import java.util.List;

import com.canaan.common.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.canaan.common.annotation.Excel;
import com.canaan.common.core.domain.BaseEntity;

/**
 * 物料质检项对象 wms_product_quality_item
 *
 * @author ruoyi
 * @date 2023-02-03
 */
@ApiModel(description = "wms_product_quality_item")
@TableName("wms_product_quality_item")
@Data
public class ProductQualityItem extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    @ApiModelProperty("${comment}")
    private Long id;

    /** 编码 */
    @Excel(name = "编码")
    @ApiModelProperty("质检项编码")
    private String no;

    /** 物料编码 */
    @Excel(name = "物料编码")
    @ApiModelProperty("物料编码")
    private String productNo;

    /** 质检项名称 */
    @Excel(name = "质检项名称")
    @ApiModelProperty("质检项名称")
    private String itemName;

    /** 质检项编码 */
    @Excel(name = "质检项编码")
    @ApiModelProperty("质检项编码")
    private String itemNo;

    /** 值类型    RANGE(范围值)STATUS(状态值)
 */
    @Excel(name = "值类型")
    @ApiModelProperty("值类型")
    private String valueType;

    /** 标准上限 */
    @Excel(name = "标准上限")
    @ApiModelProperty("标准上限")
    private BigDecimal upperLimitValue;

    /** 标准下限 */
    @Excel(name = "标准下限")
    @ApiModelProperty("标准下限")
    private BigDecimal lowerLimitValue;

    /** 方法 */
    @Excel(name = "方法")
    @ApiModelProperty("方法")
    private String method;

    @ApiModelProperty("质检类型")
    private String qualityType;
    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    @ApiModelProperty("${comment}")
    private Long sort;

    /** $column.columnComment */
    @ApiModelProperty("${comment}")
    private String delFlag;

    /** 不查询的no */
    @ApiModelProperty("不查询的no")
    private List<String> notInNos;

    /** 物料编号集合 */
    @ApiModelProperty("物料编号集合")
    private List<String> productNos;

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("no", getNo())
            .append("productNo", getProductNo())
            .append("itemName", getItemName())
            .append("valueType", getValueType())
            .append("upperLimitValue", getUpperLimitValue())
            .append("lowerLimitValue", getLowerLimitValue())
            .append("method", getMethod())
            .append("remark", getRemark())
            .append("createBy", getCreateBy())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("createTime", getCreateTime())
            .append("sort", getSort())
            .append("delFlag", getDelFlag())
            .toString();
    }
}
